package services;

import contracts.ContractException;

public interface TerrainService {
	
	/* Observators :*/
	
	public int getNombreColonnes();
	public int getNombreLignes();
	public BlocService getBloc(int colonne, int ligne) throws ContractException;
	//\pre getBloc(T,x,y) require (0<=x<getNombreColonnes(T)) and (0<=y<getNombreLignes(T))
	
	
	/* Constructors*/
	public void init(int nbColonnes, int nbLignes) throws ContractException;
    //pre init(X,Y) require X>= 1 and Y>= 1
	
	
	
	/* Observations :
	[init]
	       getNombreColonnes(init(X,Y)) = X
	       getNombreLignes(init(X,Y)) = Y
	       getBloc(init(X,Y),x,y) = NULL
   
*/
}
